package com.ruoyi.system.domain.wechat.request.vo;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 巡检问题上报表单VO
 *
 * @author jiexiang.sun/Jason
 * @version 1.0.0
 * @create 2022-03-09 21:41
 **/
@Data
public class WechatInspectionProblemReportVO {

    /**
     * 省编号code
     */
    @NotNull(message = "请选择省")
    private Integer provinceCode;

    /**
     * 市编号code
     */
    @NotNull(message = "请选择市")
    private Integer cityCode;

    /**
     * 区县编号code
     */
    @NotNull(message = "请选择区")
    private Integer areaCode;

    /**
     * 街道编号code
     */
    @NotNull(message = "请选择街道")
    private Integer streetCode;

    /**
     * 详细地址
     */
    @NotBlank(message = "请输入详细位置")
    private String address;

    /**
     * 地址的额外补充说明
     */
    private String addressExplain;

    /**
     * 经度
     */
    @NotNull(message = "请输入经度")
    private Double longitude;

    /**
     * 纬度
     */
    @NotNull(message = "请输入纬度")
    private Double latitude;

    /**
     * 铁路桩位
     */
    @NotBlank(message = "请输入铁路桩位名称")
    private String pileLocation;

    /**
     * 方向：1=上行、2=下行
     */
    @NotNull(message = "请选择方向")
    private Short direction;

    /**
     * 距离（单位：米）
     */
    @NotNull(message = "请输入距铁路线米数")
    private Integer distance;

    /**
     * 问题类别code，字典值
     */
    @NotBlank(message = "请选择问题类别")
    private String problemCategory;

    /**
     * 问题内容
     */
    @NotBlank(message = "请输入问题描述")
    private String problemContent;

    /**
     * 问题照片
     */
    private String problemPhoto;

    /**
     * 问题上报用户编号id
     */
    private Long reportUserId;

    /**
     * 问题依据
     */
    private String according;

    /**
     * 问题整改意见
     */
    @NotBlank(message = "请输入整改建议")
    private String rectificationAdvice;

    /**
     * 上报用户角色ID
     */
    private Long reportUserRoleId;

    /**
     * 上报用户部门ID
     */
    private Long reportUserDeptId;

    /**
     * 第三方上报巡检问题时需要提交的任务编号
     */
    private Long taskId;
}
